const path = require('path');
const { sep } = path;
/**
 * 加载配置文件
 * @param {*} app Elpis应用实例
 */
module.exports = (app) => {
    const configPath = path.resolve(app.baseDir, `.${sep}config`);
    /**
     * 默认配置
     */
    let defaultConfig = {}
    try {
        defaultConfig = require(path.resolve(configPath, `.${sep}config.default.js`));
    } catch (error) {
        console.log(`-- [exception] config.default.js not found --`);
    }
    /**
     * 环境配置
     */
    let envConfig = {}
    /**
     * 加载环境配置文件
     */
    try {
        if (app.env.isLocal()) {
            envConfig = require(path.resolve(configPath, `.${sep}config.local.js`));
        } else if (app.env.isBeta()) {
            envConfig = require(path.resolve(configPath, `.${sep}config.beta.js`));
            console.log(envConfig)
        } else if (app.env.isProduction()) {
            envConfig = require(path.resolve(configPath, `.${sep}config.prod.js`));
        }
    } catch (error) {
        console.log(`-- [exception] config.${app.env.get()}.js not found --`);
    }
    app.config = Object.assign(defaultConfig, envConfig);
}